import 'package:flutter/material.dart';

const _edgeSize0 = 0.0;
const _edgeSize1 = 5.0;
const _edgeSize2 = 10.0;
const _edgeSize3 = 20.0;
const _edgeSize4 = 30.0;
const _edgeSize5 = 50.0;

const edgeA0 = EdgeInsets.all(_edgeSize0);

const edgeA1 = EdgeInsets.all(_edgeSize1);
const edgeT1 = EdgeInsets.only(top: _edgeSize1);
const edgeL1 = EdgeInsets.only(left: _edgeSize1);
const edgeR1 = EdgeInsets.only(right: _edgeSize1);
const edgeB1 = EdgeInsets.only(bottom: _edgeSize1);
const edgeV1 = EdgeInsets.symmetric(vertical: _edgeSize1);
const edgeH1 = EdgeInsets.symmetric(horizontal: _edgeSize1);

const edgeA2 = EdgeInsets.all(_edgeSize2);
const edgeT2 = EdgeInsets.only(top: _edgeSize2);
const edgeL2 = EdgeInsets.only(left: _edgeSize2);
const edgeR2 = EdgeInsets.only(right: _edgeSize2);
const edgeB2 = EdgeInsets.only(bottom: _edgeSize2);
const edgeV2 = EdgeInsets.symmetric(vertical: _edgeSize2);
const edgeH2 = EdgeInsets.symmetric(horizontal: _edgeSize2);

const edgeA3 = EdgeInsets.all(_edgeSize3);
const edgeT3 = EdgeInsets.only(top: _edgeSize3);
const edgeL3 = EdgeInsets.only(left: _edgeSize3);
const edgeR3 = EdgeInsets.only(right: _edgeSize3);
const edgeB3 = EdgeInsets.only(bottom: _edgeSize3);
const edgeV3 = EdgeInsets.symmetric(vertical: _edgeSize3);
const edgeH3 = EdgeInsets.symmetric(horizontal: _edgeSize3);

const edgeA4 = EdgeInsets.all(_edgeSize4);
const edgeT4 = EdgeInsets.only(top: _edgeSize4);
const edgeL4 = EdgeInsets.only(left: _edgeSize4);
const edgeR4 = EdgeInsets.only(right: _edgeSize4);
const edgeB4 = EdgeInsets.only(bottom: _edgeSize4);
const edgeV4 = EdgeInsets.symmetric(vertical: _edgeSize4);
const edgeH4 = EdgeInsets.symmetric(horizontal: _edgeSize4);

const edgeA5 = EdgeInsets.all(_edgeSize5);
const edgeT5 = EdgeInsets.only(top: _edgeSize5);
const edgeL5 = EdgeInsets.only(left: _edgeSize5);
const edgeR5 = EdgeInsets.only(right: _edgeSize5);
const edgeB5 = EdgeInsets.only(bottom: _edgeSize5);
const edgeV5 = EdgeInsets.symmetric(vertical: _edgeSize5);
const edgeH5 = EdgeInsets.symmetric(horizontal: _edgeSize5);

const blackShadow1 = Shadow(
  offset: Offset(1, 1),
  blurRadius: 1,
  color: Colors.black54,
);

const whiteShadow1 = Shadow(
  offset: Offset(1, 1),
  blurRadius: 1,
  color: Colors.white54,
);

const roundLeft = RoundedRectangleBorder(borderRadius:BorderRadius.only(
  topLeft: Radius.circular(200),
  bottomLeft: Radius.circular(200),
));

const roundRight = RoundedRectangleBorder(borderRadius:BorderRadius.only(
  topRight: Radius.circular(200),
  bottomRight: Radius.circular(200),
));

ButtonStyle roundButtonStyle({
  double vPadding = 0,
  double hPadding = 0,
  Color? backgroundColor,
  Color? textColor,
  double? elevation,
  OutlinedBorder shape = const StadiumBorder(),
}){
  return ElevatedButton.styleFrom(
    primary: backgroundColor,
    onPrimary: textColor,
    elevation: elevation,
    padding: EdgeInsets.symmetric(vertical: vPadding, horizontal: hPadding),
    shape: shape,
  );
}

ButtonStyle roundLineButtonStyle({
  double vPadding = 0,
  double hPadding = 0,
  Color? color,
  double? elevation,
  OutlinedBorder shape = const StadiumBorder(),
}){
  return OutlinedButton.styleFrom(
    primary: color,
    elevation: elevation,
    padding: EdgeInsets.symmetric(vertical: vPadding, horizontal: hPadding),
    side: color == null ? null : BorderSide(color: color.withAlpha(100)),
    shape: shape,
  );
}
